#encoding:utf8

"""
用来检查是否是登录页面 或者 错误页面

注意:
    字符串统一使用utf8格式

"""

import re
from decorators.dec_todo import TODO
from utils.Exceptions import ErrorPageExceptions, LoginException


error_res = [
    # (urlpattern, error_pattern)
    ('', "error page"),
]


@TODO(status=1)
def check_error_page(url, source):
    # for example
    for p in error_res:
        url_pattern, error_pattern = p
        if re.search(url_pattern, url):
            if re.search(error_pattern, source):
                raise ErrorPageExceptions("error message [{0}] found in url [{1}]".format(error_pattern, url))


@TODO(status=1)
def check_login_page(url, source):
    """
    这里的url为解析的url, source为获得url的资源文件之后的source, 可能获得源文件之后的source为登录url,所以这个地方病不完整.
    """
    # 对url进行检查
    if re.search("login", url):
        raise LoginException("login appear in url [{}]".format(url))
    # 对source进行检查, 查看是否有登录的form, TODO
    pass







